﻿using System.Reflection;

namespace Borg
{
    public class ContractEventArgs : SystemEventArgs
    {
        internal readonly ContractInfo contractInfo;

        public ContractEventArgs(ContractInfo contractInfo, Assembly initiator)
            : base(initiator)
        {
            this.contractInfo = contractInfo;
        }

        public ContractInfo ContractInfo
        {
            get { return contractInfo; }
        }

        public RepositoryCollection<SlotDefinition> SlotDefinitions
        {
            get { return contractInfo.slotDefinitions; }
        }
    }

    public delegate void ContractEventHandler(object sender, ContractEventArgs args);
}

